Type Property Example

This example demonstrates the Type property by returning the name of the constant corresponding to the value of the Type property of four different Recordsets. The RecordsetType function is required for this procedure to run.

Sub TypeX()

   Dim dbsNorthwind As Database
   Dim rstEmployees As Recordset

   Set dbsNorthwind = OpenDatabase("Northwind.mdb")

   ' Default is dbOpenTable.
   Set rstEmployees = _
      dbsNorthwind.OpenRecordset("Employees")
   Debug.Print _
      "Table-type recordset (Employees table): " & _
      RecordsetType(rstEmployees.Type)
   rstEmployees.Close

   Set rstEmployees = _
      dbsNorthwind.OpenRecordset("Employees", _
      dbOpenDynaset)
   Debug.Print _
      "Dynaset-type recordset (Employees table): " & _
      RecordsetType(rstEmployees.Type)
   rstEmployees.Close

   Set rstEmployees = _
      dbsNorthwind.OpenRecordset("Employees", _
      dbOpenSnapshot)
   Debug.Print _
      "Snapshot-type recordset (Employees table): " & _
      RecordsetType(rstEmployees.Type)
   rstEmployees.Close

   Set rstEmployees = _
      dbsNorthwind.OpenRecordset("Employees", _
      dbOpenForwardOnly)
   Debug.Print _
      "Forward-only-type recordset (Employees table): " & _
      RecordsetType(rstEmployees.Type)
   rstEmployees.Close

   dbsNorthwind.Close

End Sub

Function RecordsetType(intType As Integer) As String

   Select Case intType
      Case dbOpenTable
         RecordsetType = "dbOpenTable"
      Case dbOpenDynaset
         RecordsetType = "dbOpenDynaset"
      Case dbOpenSnapshot
         RecordsetType = "dbOpenSnapshot"
      Case dbOpenForwardOnly
         RecordsetType = "dbOpenForwardOnly"
   End Select

End Function

This example demonstrates the Type property by returning the name of the constant corresponding to the value of the Type property of all the Field objects in the Employees table. The FieldType function is required for this procedure to run.

Sub TypeX2()

   Dim dbsNorthwind As Database
   Dim fldLoop As Field

   Set dbsNorthwind = OpenDatabase("Northwind.mdb")

   Debug.Print "Fields in Employees TableDef:"
   Debug.Print "  Type - Name"

   ' Enumerate Fields collection of Employees table.
   For Each fldLoop In _
      dbsNorthwind.TableDefs!Employees.Fields
      Debug.Print "    " & FieldType(fldLoop.Type) & _
         " - " & fldLoop.Name
   Next fldLoop

   dbsNorthwind.Close

End Sub

Function FieldType(intType As Integer) As String

   Select Case intType
      Case dbBoolean
         FieldType = "dbBoolean"
      Case dbByte
         FieldType = "dbByte"
      Case dbInteger
         FieldType = "dbInteger"
      Case dbLong
         FieldType = "dbLong"
      Case dbCurrency
         FieldType = "dbCurrency"
      Case dbSingle
         FieldType = "dbSingle"
      Case dbDouble
         FieldType = "dbDouble"
      Case dbDate
         FieldType = "dbDate"
      Case dbText
         FieldType = "dbText"
      Case dbLongBinary
         FieldType = "dbLongBinary"
      Case dbMemo
         FieldType = "dbMemo"
      Case dbGUID
         FieldType = "dbGUID"
   End Select

End Function

This example demonstrates the Type property by returning the name of the constant corresponding to the value of the Type property of all the QueryDef objects in Northwind. The QueryDefType function is required for this procedure to run.

Sub TypeX3()

   Dim dbsNorthwind As Database
   Dim qdfLoop As QueryDef

   Set dbsNorthwind = OpenDatabase("Northwind.mdb")

   Debug.Print "QueryDefs in Northwind Database:"
   Debug.Print "  Type - Name"

   ' Enumerate QueryDefs collection of Northwind database.
   For Each qdfLoop In dbsNorthwind.QueryDefs
      Debug.Print "    " & _
         QueryDefType(qdfLoop.Type) & " - " & qdfLoop.Name
   Next qdfLoop

   dbsNorthwind.Close

End Sub

Function QueryDefType(intType As Integer) As String

   Select Case intType
      Case dbQSelect
         QueryDefType = "dbQSelect"
      Case dbQAction
         QueryDefType = "dbQAction"
      Case dbQCrosstab
         QueryDefType = "dbQCrosstab"
      Case dbQDelete
         QueryDefType = "dbQDelete"
      Case dbQUpdate
         QueryDefType = "dbQUpdate"
      Case dbQAppend
         QueryDefType = "dbQAppend"
      Case dbQMakeTable
         QueryDefType = "dbQMakeTable"
      Case dbQDDL
         QueryDefType = "dbQDDL"
      Case dbQSQLPassThrough
         QueryDefType = "dbQSQLPassThrough"
      Case dbQSetOperation
         QueryDefType = "dbQSetOperation"
      Case dbQSPTBulk
         QueryDefType = "dbQSPTBulk"
   End Select

End Function